#ifndef _WIZARD_H
#define _WIZARD_H

#include "config.h"

typedef struct
{
	ifly_wifi_t WifiCfg;
	ifly_net3g4g_t g3_network;
	ifly_netserver_t netserver;
	ifly_mode_t  modeInfo;
	ifly_alarmin_t Alarmin_Info[MAX_ALARM_IN_NUM];
	ifly_startclost_mgr_t  startclosemgr;
	ifly_Vlot_conf_t  vlotconf;  
	u8                dtfmtInfo;
	ifly_gps_check_t  GpsCheck;
	#ifdef TTX_PLATFORM
	ifly_ttx_set_t ttxServer;
	#endif
	#if defined JT_PROTOCAL || defined MR9604_FEITIAN
	ifly_jt_srv_t jtServer;
	#endif
#ifdef JT905_PROTOCOL
	ifly_jt905_srv_t jt905Server;
#endif
	ifly_const_cofig_t	BusInfo;
	pthread_mutex_t lock;
}ifly_Wizard_config_t;

void InitWizard(void);
void RefreshWizardConf(void);
void GetWizardConf(ifly_Wizard_config_t *pConf);

void GetBusInfWizard(ifly_const_cofig_t *pInf);
void SetBusInfWizard(const ifly_const_cofig_t *pInf);
void GetNetServerWizard(ifly_netserver_t *pSrv);
void SetNetServerWizard(const ifly_netserver_t *pSrv);
void GetNet3G4GWizard(ifly_net3g4g_t *pG3G4);
void SetNet3G4GWizard(const ifly_net3g4g_t *pG3G4);
void GetWifiWizard(ifly_wifi_t *pWifi);
void SetWifiWizard(const ifly_wifi_t *pWifi);

#ifdef TTX_PLATFORM
void GetTTXParamWizard(ifly_ttx_set_t *pTTXParam);
void SetTTXParamWizard(const ifly_ttx_set_t *pTTXParam);
#endif
#ifdef JT_PROTOCAL
void GetJTParamWizard(ifly_jt_srv_t *pJTParam);
void SetJTParamWizard(const ifly_jt_srv_t *pJTParam);
#endif
#ifdef MR9604_FEITIAN
void GetTransportStdSrvWizard(ifly_jt_srv_t *pSrv);
void SetTransportStdSrvWizard(const ifly_jt_srv_t *pSrv);
#endif

void GetDateformatParamWizard(u8 *pDtfmt);
void SetDateformatParamWizard(const u8 *pDtfmt);
void GetGpsCheckParamWizard(ifly_gps_check_t *pGps);
void SetGpsCheckParamWizard(const ifly_gps_check_t *pGps);
void GetModeWizard(ifly_mode_t * pMode);
void SetModeWizard(ifly_mode_t * pMode);
void GetStartCloseWizard(ifly_startclost_mgr_t * pStcl);
void SetStartCloseWizard(ifly_startclost_mgr_t * pStcl);
void GetAlarmInWizard(ifly_alarmin_t * pAlarm,u8 chn);
void SetAlarmInWizard(ifly_alarmin_t * pAlarm,u8 chn);
#endif

